﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MethodWorx.CMS.Providers;
using MethodWorx.CMS.Membership;

namespace MethodWorx.CMS.Workflow
{
    public interface IWorkflowExecutionContext
    {
        object GetWorkflowValue(string name);
        IEnumerable<string> GetWorkflowErrors(string name);
        void AddWorkflowError(string name, string value);
        bool IsValid();
        ICmsDataProvider CmsDataProvider { get; set; }
        Dictionary<string, string> GetAllWorkflowValues();
        void AddWorkflowValue(string name, object value);
        User CurrentUser { get; }
        T GetService<T>();
    }
}
